
export type CartStateType = {
    maxCartNum: number;
    checkType: boolean;
    shopCarts: Array<CartGroupType>;
    summaryInfo: {
        totalAmount: number,
        discountAmount: number,
        totalCartNum: number,
        selectedCartNum: number,
        selectedCartIds: string[]
    }
}

export type CartGroupType = {
    shopId: string | number;
    checkType: boolean;
    deepLevel: number;
    shopInfo: {
        shopId: string | number;
        shopName: string;
    };
    actItems?: Array<ActItemType>;
}

export type ActItemType = {
    actId: string | number;
    checkType: boolean;
    deepLevel: number;
    carts: Array<CartItemType>;
}

export type CartItemType = {
    checkType: boolean;
    deepLevel: number;
    cartId: string | number;
    goodsId: string | number;
    goodsName: string;
    goodsImg: string;
    goodsPrice: number;
    quantity: number;
    skuLabels: [
        {
            desc: string;
        }
    ]
    mainSku: {
        skuId: string | number;
        skuName: string;
        skuPrice: number;
        skuSpecsDesc: string;
    }
}

export type UpdateCartActionType = {
    shopId: string | number;
    actId: string | number;
    cartId: string | number;
    
    quantity?: number;
    checkType?: boolean;
}